class Adder:
    def add(self, x, y):
        print("Not Implemented")

    def __init__(self, data=[]) -> None:
        self.data = data

    def __add__(self, other):
        return self.add(self.data, other)


class ListAdder(Adder):
    def add(self, x, y):
        return x+y


class DictAdder(Adder):
    def add(self, x, y):
        result = {}
        for k in x.keys():
            result[k] = x[k]
        for k in y.keys():
            result[k] = y[k]
        return result
